// dir.h - dir function

#ifndef __DIR_H
#define __DIR_H

//===========================================================================
// Includes
//

#include <sys/stat.h>

//#include "../common/bit_vars.h"     // Bitwise variable type definitions
//#include "../common/C_funcs.h"      // Extended C Functions
#include <stdbool.h>

//===========================================================================
// Limits & Errors
//

#define dirNameMax  (1024)  // the longest filename with full _relative_ path

#define dirROOTTOOLONG  (1)
#define dirTOOLONG      (2)
#define dirBADROOT      (3)


//===========================================================================
// Procedure and Function prototypes
//

int   dir( char* root, bool recurse,
             int (*doit)(int,char*,char*,char*,struct stat*,bool,void*),
             void* prams );

int   dir_rec( char* path, char* rpath, int max, bool recurse, int depth,
               int (*doit)(int,char*,char*,char*,struct stat*,bool,void*),
               void* prams );

int   glob (const char *mask, const char *fname) ;


#endif // __DIR_H

// dir.h [EOF]

